package com.seedwill.common.meta;

/**
 * 方面执行器
 * 
 * 考虑：可否利用ASPECTJ的原理,解偶对象，或组合任意对象的方法，并形成新的CONTEXT  
 *      JAVA ASSISTANT
 * 
 * @author kdyi
 *
 */
public interface IAspectExecutor extends IData {

	/**
	 * 执行
	 * @param ctx
	 * @param rule
	 * @param data
	 * @return
	 */
	IData execute(IContext ctx, IRule rule, IData data);
	
	/**
	 * 执行
	 * @return
	 */
	IData execute();
	
	/**
	 * 设置类别WildCatetory
	 * @param cate
	 */
	public void setWildCatetory(String cate);
	
	/**
	 * 取得类别WildCatetory
	 * @return
	 */
	public String getWildCatetory();
	
	
	/**
	 * 设置Context
	 * @param ctx
	 */
	public void setContext(IContext ctx);
	
	/**
	 * 取得Context
	 * @return
	 */
	public IContext getContext();	
	
}
